package com.letoken.platform.pub.annotation.log;



import com.letoken.platform.pub.enums.LogOperationModule;
import com.letoken.platform.pub.enums.LogOperationType;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface SysLog {

    /**
     * 日志描述
     */
    String description() default "";

    /**
     * 操作类型：select,insert,update,delete
     */
    LogOperationType operationType() default LogOperationType.UNKNOWN;

    /**
     * 操作模块：user
     */
    LogOperationModule operationModule() default LogOperationModule.UNKNOWN;


    /**
     * 核心字段 可能 1-5
     */
    String[] coreFields() default {};

    /**
     * 日志等级 可能 1-5
     */
    int level() default 0;
}
